import type { TabsProps } from 'antd';
import type { SizeType } from 'antd/lib/config-provider/SizeContext'

// 主题状态
export interface ThemeConfigProp {
  // primary: string;
  isDark: boolean; // 是否是暗黑模式
  weakOrGray: string; // 弱色或灰色主题色
  breadcrumb: boolean;
  tabs: boolean;
  footer: boolean;
}

// 全局状态
export interface GlobalState {
  token: string;
  userInfo: any;
  setAssemblySize: SizeType;
  language: string;
  assemblySize: string;
  themeConfig: ThemeConfigProp;
}

export interface MenuState {
  isCollapse: boolean;
  menuList: Menu.MenuOptions[]
}

export interface TabsState {
  tabsActive: string;
  tabsList: TabsProps['items'];
}

export interface BreadcrumbState {
  breadcrumbList: {
    [propName: string]: any
  }
}

export interface AuthState {
  // authButtons: {
  //   [propName: string]: any
  // };
  authRouter: string[];
}